<?php	

include_once(dirname(__FILE__).'/classes_database/services.database.sysuser.php');
include_once(dirname(__FILE__).'/service.php');

class System_Users extends Service{

	private  $db = null;
	//private  $log = null;

	public function System_Users(){
		$this->db  = DBSysUser::getInstance();
		//$this->log = Logger::getRootLogger();
	}
	
	public function generateChallange($length = 40)
	{
		$challenge = "";
		$possible = "0123456789bcdfghjkmyz!#$%&?:.,"; 		
		$i = 0; 		
		while ($i < $length) { 
			$char = substr($possible, mt_rand(0, strlen($possible)-1), 1);
			$challenge .= $char;
			$i++;
		}		
		return $challenge;
	}

	
	/**
	* @remotable
	* @formHandler
	*/	 
	public function login($form){
		$response = array();
		
		$config = simplexml_load_file(CONFIG_FILE);	
		$logSql = ($config->database->logsql == 'true');
		$simplelogin =  ($config->database->simplelogin == 'true');
		
		if( $simplelogin == true ){
		
			session_start();
			session_unset();
		
			$_SESSION['user_member'] = $form['loginUsername'];
			$_SESSION['id_perfil'] = 2;
			$_SESSION['user_name'] = 'user_name';
			$_SESSION['user_surname'] = 'user_surname';
			$_SESSION['user_surname'] = 'user_surname';
			
			$response['success'] = true;
		
		}else{
			
			$result = $this->db->GetAll("SELECT * FROM sys_usuarios WHERE user_name = '".$form['loginUsername']."'");
			$result = $result['rows'][0];
			$md5 = md5( $_SESSION['challenge'].$result['passwd'] );
			$response['success'] = ( $form['loginPassword'] == $md5 );
			if(!$response['success']){ 			
				$response['message'] = "Usuario o Contrase&ntilde;a no validos";				
			}else{
			
				$params = array();
				session_start();
				session_unset();
			
				$_SESSION['id_usuario'] = $result['id_usuario'];
				$_SESSION['id_perfil'] = 2;
				$_SESSION['user_name'] = $result['nombre'];
				$_SESSION['user_surname'] = $result['apellido'];				
				$response['user_name'] = $result['nombre'];
				
				$this->getLogger()->debug("executeInsert");
				$this->getLogger()->debug("\$table = sys_user_log");

				$this->db->insertUserLog( $result['id_usuario'], $_SERVER['REMOTE_ADDR'], 'USUARIO_LOGIN' );

			}
			
		}
		return $response;
	}
	
	/**
	* @remotable
	*/
	public function closeSession(){		
		$this->db->insertUserLog( $result['id_usuario'], $_SERVER['REMOTE_ADDR'], 'USUARIO_LOGOUT' );
		$this->getLogger()->debug("closeSession");
		session_start();		
		session_regenerate_id();
		session_unset();
		session_destroy();
		$result['success'] = true;
		return $result;		
	}
	
	/**
	 * @remotable
	 */
	public function getText($text){
		$this->getLogger()->debug(getWhoText);
		
		switch($text){
			case 'who':
				$return = "	<span style=\"color:white\"><p align=\"justify\">Toda la historia remonta en la localidad de Lomas Del Mirador en el año 1969, un laboratorio fotográfico ubicado en la Av. San Martín llamado \"El Santo\". Sus comienzos en el revelado blanco y negro, y pioneros en la fotografía de color; su calidad de revelado mantuvo siempre su postura de responsabilidad y criterio.</p>
							<br><p align=\"justify\">Años mas tarde se crea \"Ricordi Digital\", un laboratorio fotográfico, abriendo sus puertas en la Ciudad de San Bernardo en el año 1988 / 89 siendo el primer laboratorio de la costa Atlántica para luego trasladarse en el año 1990 a la ciudad de Ramos Mejía. A partir de entonces se iniciaron servicios al personal aficionado y profesional.</p><span>";
				break;
			case 'where':
				$return = "<p>Direccion y demas Info</p>";
				break;
		}
		
		$result = array('text'=>$return);
		return($result);
	}
	
}	

?>